package com.dji.sdk.sample.demo.camera; import android.content.Context; import com.dji.sdk.sample.R; import com.dji.sdk.sample.internal.view.BasePushDataView; import com.dji.sdk.sample.internal.controller.DJISampleApplication; import dji.common.camera.SystemState; import dji.sdk.camera.Camera; /** * Class for getting the camera information */ public class PushCameraDataView extends BasePushDataView { public PushCameraDataView(Context context) { super(context); } @Override protected void onAttachedToWindow() { super.onAttachedToWindow(); try { DJISampleApplication.getProductInstance().getCamera().setSystemStateCallback(new SystemState.Callback() { @Override public void onUpdate(SystemState cameraSystemState) { if (null != cameraSystemState) { stringBuffer.delete(0, stringBuffer.length()); stringBuffer.append("CameraMode: ").append(cameraSystemState.getMode()).append("\n"); stringBuffer.append("isRecord: ").append(cameraSystemState.isRecording()).append("\n"); stringBuffer.append("isStoringPhoto: ").append(cameraSystemState.isStoringPhoto()).append("\n"); stringBuffer.append("isCameraOverHeated: ") .append(cameraSystemState.isOverheating()) .append("\n\n"); showStringBufferResult(); } } }); } catch (Exception exception) { //do something } //Get Thermal Camera Temperature try { if (DJISampleApplication.getProductInstance().getCamera().isThermalCamera()) { if (DJISampleApplication.getProductInstance().getCamera().getDisplayName() == Camera.DisplayNameXT) { //display thermal temperature DJISampleApplication.getProductInstance() .getCamera() .setThermalTemperatureCallback(new Camera.TemperatureDataCallback() { @Override public void onUpdate(float temperature) { stringBuffer.append("Temperature: ").append(temperature).append("\n"); showStringBufferResult(); } }); } } } catch (Exception e) { //do something } } @Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); try { DJISampleApplication.getProductInstance().getCamera().setSystemStateCallback(null); } catch (Exception exception) { } } @Override public int getDescription() { return R.string.camera_listview_push_info; } }